The present disclosure relates to a decimal adder that concurrently generates intermediate results and a boundary indicator that indicates whether a collective result generates an overflow condition or an underflow condition.
Processors typically perform two types of arithmetic operations, which are fixed-point operations and floating-point operations. Fixed-point operations process numbers (e.g., add, subtract, multiply, divide) that have a fixed number of digits before or after a radix point (e.g., decimal point). Floating-point operations process numbers that are represented approximately to a fixed number of significant digits and scaled using an exponent. The term “floating point” refers to the fact that the radix point “floats” relative to the significant digits of a number.
Situations arise in fixed-point operations when a result causes an “overflow” condition. An overflow occurs when a calculation produces a result that is greater in magnitude than a given register or storage location is allocated to store or represent. Likewise, situations arise in floating-point operations that cause an “underflow” condition. An underflow occurs when a calculation's result is smaller in magnitude (e.g., closer to zero) than a smallest value representable as a normal floating point number in the given register or storage location.